#ifndef GAME_HPP
#define GAME_HPP


#include <sstream>

#include "World.hpp"
#include "../Renderer/Renderer.hpp"
#include "../Renderer/SpriteManager.hpp"
#include "../Game/Objects/GameObject.hpp"

#include <SFML/Graphics.hpp>
#include <SFML/Audio.hpp>

class Game
{
    private:
        World m_world;
        Renderer m_renderer;
        SpriteManager m_spriteManager;
		sf::Music m_music;

		float sinx,siny;

		std::string m_state;
        bool m_running;
		int mouseX,mouseY;
		bool mouseClicked;
				

    public:
        Game(sf::RenderWindow* pRWindow);
        ~Game();

        bool load();

        void run();

		void winLevel();
		void setInput(const sf::Input&);
        void handleEvents();
        void exitGame();
};

#endif
